package com.mzj.saas.mservice.property.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.Column;
import java.io.Serializable;
import java.util.Date;

/**
 * @author hikari
 * @since 2021-05-25
 */
@Data
@ApiModel(description = "社区房屋用户信息")
public class CommunityHouseUserVO implements Serializable {
    private static final long serialVersionUID = 8819247568936731651L;

    private Long id;

    /**
     * 房产id
     */
    @ApiModelProperty(value = "房产id",required = false)
    private String communityHouseId;

    /**
     * 小区id
     */
    @ApiModelProperty(value = "小区id",required = false)
    private String communityId;
    @ApiModelProperty(value = "小区名称",required = false)
    private String communityName;
    @ApiModelProperty(value = "楼栋",required = false)
    private Long buildId;
    @ApiModelProperty(value = "楼栋名称",required = false)
    private String buildName;
    @ApiModelProperty(value = "单元",required = false)
    private Long unitId;
    @ApiModelProperty(value = "单元名称",required = false)
    private String unitName;
    @ApiModelProperty(value = "房号",required = false)
    private String roomNumber;
    @ApiModelProperty(value = "楼层",required = false)
    private Integer floor;
    @ApiModelProperty(value = "用户id",required = false)
    private String userId;//用户id
    /**
     * 成员类型：1承租人 2同住人 3房屋管理员员
     */
    @ApiModelProperty(value = "成员类型：1承租人 2同住人 3房屋管理员员 4房管员",required = false)
    private Integer type;
    private String typeName;
    /**
     * 用户类型：1 app用户 2 企业用户
     */
    @ApiModelProperty(value = "用户类型：1 app用户 2 企业用户",required = false)
    private Integer userType;
    /**
     * 成员姓名
     */
    @ApiModelProperty(value = "成员姓名",required = false)
    private String name;

    /**
     * 成员手机
     */
    @ApiModelProperty(value = "成员手机",required = false)
    private String mobile;

    /**
     * 状态 1正常 2删除
     */
    @ApiModelProperty(value = "状态 1正常 2删除",required = false)
    private Integer status;

    /**
     * 关系
     */
    private Integer relationTag;
    /**
     * 人脸头像
     */
    @ApiModelProperty(value = "人脸头像",required = false)
    private String humanFaceImage;

    /**
     * 身份证号码
     */
    @ApiModelProperty(value = "身份证号码",required = false)
    private String cardNumber;

    /**
     * 是否变更
     */
    private Integer changeLabel;

    /**
     * 操作人
     */
    @ApiModelProperty(value = "操作人",required = false)
    private String operatorId;

    /**
     * 操作时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "操作时间（入住时间）",required = false)
    private Date operatorTime;
    @ApiModelProperty(value = "性质:1公租房、2商品房、3经济适用房、5其它",required = false)
    private Integer houseNature;
    @ApiModelProperty(value = "产权所有人",required = false)
    private String ownerName;
    @ApiModelProperty(value = "产权所有人手机",required = false)
    private String ownerMobile;
    @ApiModelProperty(value = "房屋是否已设承租人 0未设承租人 1已设承租人",required = false)
    private Integer isLessee;//房屋是否已设承租人 0未设承租人 1已设承租人
    private Long ids;//返回给页面的一个标识
    private Long ids1;//返回给页面的一个标识，判断是否保存
    @ApiModelProperty(value = "实名认证：0未认证 1已认证",required = false)
    private Integer certificationStatus;//实名认证：0未认证 1已认证
    
    /**
	 * 是否房屋承租人：0否 1是 2本人
	 */
    @ApiModelProperty(value = "是否房屋承租人：0否 1是 2本人",required = false)
	private Integer matchStatus;

    /**
     * 是否启用账单 状态：1授权 2未授权
     */
    @ApiModelProperty(value = "是否启用账单",required = false)
    private Integer accountStatus;

    /**
     * 是否有手机号：1是 0否
     */
    private Integer mobileStatus;

    /**
     * 设置未开门消息推送提醒（0：不提醒；1：提醒）
     */
    @Column(name = "open_push_message_type", nullable = true)
    private String openPushMessageType;

    private String address;//地址

}
